package com.luli.service;

import com.github.pagehelper.PageInfo;
import com.luli.entity.UserData.UpdateUserParam;
import com.luli.entity.Users;
import com.luli.entity.login.RegisterUser;
import com.luli.entity.login.SysUsers;
import com.luli.entity.poi.ExportExcel;
import com.luli.entity.response.ResponseMsg;
import com.luli.model.PageInfoVo;
import org.springframework.web.multipart.MultipartFile;

import java.util.List;

/**
 * 陆离
 * 2022/5/3 1:38:42
 */
public interface UsersService {
    /**
     * 用户查询测试
     * @param userName
     * @return
     */
    List<Users> getUsers(String userName);

    /**
     * Excel下载
     */
    ExportExcel downloadExcelGetUsers(String userName);


    /**
     * 批量导入Excel
     * @param file
     * @param localPath
     */
    ResponseMsg<?> importExcel(MultipartFile file, String localPath) throws Exception;

    /**
     * 根据账户密码查找用户
     * @param account
     * @param password
     * @return
     */
    SysUsers findUser(String account, String password);

    /**
     * 注册
     * @param userInfo
     * @return
     */
    Boolean insertUser(RegisterUser userInfo);


    /**
     * 用户查询分页测试
     * @param userName
     * @return
     */
    PageInfo<Users>  getUsersPageTest(String userName, Integer pageNum , Integer pageSize ,String sex);

    /**
     * 删除用户
     * @param account
     * @return
     */
    ResponseMsg<?> delUser(String account);

    /**
     * 修改用户信息
     * @param updateUserParam
     * @return
     */
    ResponseMsg<?> updateUser(UpdateUserParam updateUserParam);

    /**
     * 用户列表信息下载
     */
    ExportExcel downloadExcelUsers(String userName);



    /**
     * Excel下载
     */
    ExportExcel downloadExcelGetUsersSheets(String userName);


    void updateUserService(String age,String account);

    void delUserService(String account);
}
